package com.xinpu.mapper;

import com.baomidou.mybatisplus.annotation.SqlParser;
import com.xinpu.vo.*;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;
import org.springframework.stereotype.Service;

import java.util.List;

@Repository
public interface DataAnalysisMapper {
    @SqlParser(filter = true)
    List<NewlyIncreasedUserOrClueVo> newlyIncreasedUser(@Param("tenantId") String tenantId, @Param("condition") Integer condition);

    @SqlParser(filter = true)
    List<NewlyIncreasedUserOrClueVo> newlyIncreasedClue(@Param("tenantId") String tenantId, @Param("condition") Integer condition);

    @SqlParser(filter = true)
    List<PhotoDataVo> PhotoP(@Param("tenantId") String tenantId, @Param("condition") Integer condition);

    @SqlParser(filter = true)
    List<OrderDateVo> OrderP(@Param("tenantId") String tenantId, @Param("condition") Integer condition);

    @SqlParser(filter = true)
    List<DataAnalysisStatusOrSourceVo> DataAnalysisStatus(String tenantId);

    @SqlParser(filter = true)
    List<DataAnalysisStatusOrSourceVo> DataAnalysisSource(String tenantId);

    @SqlParser(filter = true)
    NewlyIncreasedUserOrClueVo newlyIncreasedUserX(@Param("id") Integer id, @Param("date") String date);

    @SqlParser(filter = true)
    NewlyIncreasedUserOrClueVo newlyIncreasedClueX(@Param("id") Integer id, @Param("date") String date);

    @SqlParser(filter = true)
    MonthDataVo monthDataVo(Integer id);

    @SqlParser(filter = true)
    MonthDataVo clueMonthDataVo(Integer id);

    @SqlParser(filter = true)
    NewlyIncreasedUserOrClueVo clueQuarterDate(@Param("id") Integer id, @Param("date") String date, @Param("date1") String date1);


    @SqlParser(filter = true)
    NewlyIncreasedUserOrClueVo quarterDate(@Param("id") Integer id, @Param("date") String date, @Param("date1") String date1);

    @SqlParser(filter = true)
    CardDataVo cardData(@Param("id") Integer id, @Param("type") Integer type);

    @SqlParser(filter = true)
    Integer sum(Integer id, String tenantId,String date);

    @SqlParser(filter = true)
    Integer clueNum(Integer id, String tenantId,String date);

    @SqlParser(filter = true)
    Integer userNum(Integer id, String tenantId,String date);
}
